export * from './system'

/**
 * 图鸟内置颜色值
 */
 export const TuniaoInnerColors = 
 ['red', 'red--light', 'red--dark', 'red--disabled', 'red--reverse', 'red--reverse--light', 'red--reverse--single'
  ,'purplered', 'purplered--light', 'purplered--dark', 'purplered--disabled', 'purplered--reverse', 'purplered--reverse--light', 'purplered--reverse--single'
  ,'purple', 'purple--light', 'purple--dark', 'purple--disabled', 'purple--reverse', 'purple--reverse--light', 'purple--reverse--single'
  ,'bluepurple', 'bluepurple--light', 'bluepurple--dark', 'bluepurple--disabled', 'bluepurple--reverse', 'bluepurple--reverse--light', 'bluepurple--reverse--single'
  ,'aquablue', 'aquablue--light', 'aquablue--dark', 'aquablue--disabled', 'aquablue--reverse', 'aquablue--reverse--light', 'aquablue--reverse--single'
  ,'blue', 'blue--light', 'blue--dark', 'blue--disabled', 'blue--reverse', 'blue--reverse--light', 'blue--reverse--single'
  ,'indigo', 'indigo--light', 'indigo--dark', 'indigo--disabled', 'indigo--reverse', 'indigo--reverse--light', 'indigo--reverse--single'
  ,'cyan', 'cyan--light', 'cyan--dark', 'cyan--disabled', 'cyan--reverse', 'cyan--reverse--light', 'cyan--reverse--single'
  ,'teal', 'teal--light', 'teal--dark', 'teal--disabled', 'teal--reverse', 'teal--reverse--light', 'teal--reverse--single'
  ,'green', 'green--light', 'green--dark', 'green--disabled', 'green--reverse', 'green--reverse--light', 'green--reverse--single'
  ,'yellowgreen', 'yellowgreen--light', 'yellowgreen--dark', 'yellowgreen--disabled', 'yellowgreen--reverse', 'yellowgreen--reverse--light', 'yellowgreen--reverse--single'
  ,'lime', 'lime--light', 'lime--dark', 'lime--disabled', 'lime--reverse', 'lime--reverse--light', 'lime--reverse--single'
  ,'yellow', 'yellow--light', 'yellow--dark', 'yellow--disabled', 'yellow--reverse', 'yellow--reverse--light', 'yellow--reverse--single'
  ,'orangeyellow', 'orangeyellow--light', 'orangeyellow--dark', 'orangeyellow--disabled', 'orangeyellow--reverse', 'orangeyellow--reverse--light', 'orangeyellow--reverse--single'
  ,'orange', 'orange--light', 'orange--dark', 'orange--disabled', 'orange--reverse', 'orange--reverse--light', 'orange--reverse--single'
  ,'orangered', 'orangered--light', 'orangered--dark', 'orangered--disabled', 'orangered--reverse', 'orangered--reverse--light', 'orangered--reverse--single'
  ,'brown', 'brown--light', 'brown--dark', 'brown--disabled', 'brown--reverse', 'brown--reverse--light', 'brown--reverse--single'
  ,'grey', 'grey--light', 'grey--dark', 'grey--disabled', 'grey--reverse', 'grey--reverse--light', 'grey--reverse--single'
  ,'gray', 'gray--light', 'gray--dark', 'gray--disabled', 'gray--reverse', 'gray--reverse--light', 'gray--reverse--single'] as const
export type TuniaoInnerColor = typeof TuniaoInnerColors[number]

/**
 * 图鸟内置颜色type属性类型值
 */
export const TuniaoTypes = ['primary', 'success', 'warning', 'danger', 'info'] as const
export type TuniaoType = typeof TuniaoTypes[number]

/**
 * 图鸟内置尺寸大小值
 */
export const TuniaoSizes = ['sm', 'lg', 'xl'] as const
export type TuniaoSize = typeof TuniaoSizes[number]

/**
 * 图片mode有效值
 */
export const ImageModes = ['scaleToFill', 'aspectFit', 'aspectFill', 'widthFix', 'heightFix', 'top', 'bottom', 'center', 'left', 'right', 'top left', 'top right', 'bottom left', 'bottom right'] as const
export type ImageMode = typeof ImageModes[number]

/**
 * 大小单位有效值
 */
export const SizeUnits = ['rpx', 'px', '%'] as const
export type SizeUnit = typeof SizeUnits[number]

/** 对齐方式有效值 */
export const Aligns = ['left', 'center', 'right'] as const
export type Align = typeof Aligns[number]

/**
 * 图鸟类型颜色定义类型
 */
export type TuniaoColorTypeInfo = {
  [key in TuniaoType]: {
    "normal": string,
    "light": string
  }
}

/**
 * 组件基础颜色类型
 */
export type ComponentBaseColor = {
  /**
   * 字体颜色
   */
  color: string,
  /**
   * 背景颜色
   */
  bgColor: string
}

/**
 * 分离颜色信息类型
 */
export type ColorInfo = {
  /**
   * 颜色值
   */
  value: string,
  /**
   * 值对应的类型
   */
  type: 'class' | 'style' | ''
}